package com.cskaoyan.config;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * @author jackX
 * @datetime 2022/12/29 11:23
 * @description: TODO:
 */
@ComponentScan("com.cskaoyan.controller")
/*- 不需要写扫描包目录了 → springboot提供的默认的扫描包目录：启动类所在的包目录
- 在配置类上增加@EnableWebMvc或@Configuration
- 如果使用@EnableWebMvc意味着全面接管SpringMVC的相关配置，默认配置失效
- 如果使用<span style='color:yellow;background:red;font-size:文字大小;font-family:字体;'>**@Configuration**</span>意味着做的是配置项的补充 → 建议使用*/
@Configuration
// 后面还会做一些和SpringMVC相关的配置 需要实现接口 WebMvcConfigurer，如果实现接口里的方法就是提供一些额外的配置信息
public class ServletConfiguration implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        // 注册ResourceHandler使用ResourceHandlerRegistry
        // addResourceHandler配置ResourceHandler的映射范围
        // addResourceLocations告知当前ResourceHandler你的资源文件处于什么位置
        // ** 代表多级任意url
        // localhost:8080/pic/banner.png
        // localhost:8080/pic/dlrb.jpg
        // location:
        // 1. / web资源路径
        // 2. classpath:/  类加载路径
        // 3. file:文件路径/  文件路径 → 建议（要求）使用的路径

        registry.addResourceHandler("/pic/**").addResourceLocations("file:C:/ProjectTwo/tmp/");

    }
}
